\(\int \frac {1}{(a+b x) (c+d x)} \, dx\) [1340]

   Optimal result
   Rubi [A] (verified)
   Mathematica [A] (verified)
   Maple [A] (verified)
   Fricas [A] (verification not implemented)
   Sympy [B] (verification not implemented)
   Maxima [A] (verification not implemented)
   Giac [A] (verification not implemented)
   Mupad [B] (verification not implemented)

Optimal result

Integrand size = 15, antiderivative size = 36 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\log (a+b x)}{b c-a d}-\frac {\log (c+d x)}{b c-a d} \]

[Out]

ln(b*x+a)/(-a*d+b*c)-ln(d*x+c)/(-a*d+b*c)

Rubi [A] (verified)

Time = 0.01 (sec) , antiderivative size = 36, normalized size of antiderivative = 1.00, number of steps used = 3, number of rules used = 2, \(\frac {\text {number of rules}}{\text {integrand size}}\) = 0.133, Rules used = {36, 31} \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\log (a+b x)}{b c-a d}-\frac {\log (c+d x)}{b c-a d} \]

[In]

Int[1/((a + b*x)*(c + d*x)),x]

[Out]

Log[a + b*x]/(b*c - a*d) - Log[c + d*x]/(b*c - a*d)

Rule 31

Int[((a_) + (b_.)*(x_))^(-1), x_Symbol] :> Simp[Log[RemoveContent[a + b*x, x]]/b, x] /; FreeQ[{a, b}, x]

Rule 36

Int[1/(((a_.) + (b_.)*(x_))*((c_.) + (d_.)*(x_))), x_Symbol] :> Dist[b/(b*c - a*d), Int[1/(a + b*x), x], x] -
Dist[d/(b*c - a*d), Int[1/(c + d*x), x], x] /; FreeQ[{a, b, c, d}, x] && NeQ[b*c - a*d, 0]

Rubi steps \begin{align*} \text {integral}& = \frac {b \int \frac {1}{a+b x} \, dx}{b c-a d}-\frac {d \int \frac {1}{c+d x} \, dx}{b c-a d} \\ & = \frac {\log (a+b x)}{b c-a d}-\frac {\log (c+d x)}{b c-a d} \\ \end{align*}

Mathematica [A] (verified)

Time = 0.01 (sec) , antiderivative size = 26, normalized size of antiderivative = 0.72 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\log (a+b x)-\log (c+d x)}{b c-a d} \]

[In]

Integrate[1/((a + b*x)*(c + d*x)),x]

[Out]

(Log[a + b*x] - Log[c + d*x])/(b*c - a*d)

Maple [A] (verified)

Time = 0.46 (sec) , antiderivative size = 28, normalized size of antiderivative = 0.78

method result size
parallelrisch \(-\frac {\ln \left (b x +a \right )-\ln \left (d x +c \right )}{a d -b c}\) \(28\)
default \(\frac {\ln \left (d x +c \right )}{a d -b c}-\frac {\ln \left (b x +a \right )}{a d -b c}\) \(37\)
norman \(\frac {\ln \left (d x +c \right )}{a d -b c}-\frac {\ln \left (b x +a \right )}{a d -b c}\) \(37\)
risch \(-\frac {\ln \left (b x +a \right )}{a d -b c}+\frac {\ln \left (-d x -c \right )}{a d -b c}\) \(40\)

[In]

int(1/(b*x+a)/(d*x+c),x,method=_RETURNVERBOSE)

[Out]

-(ln(b*x+a)-ln(d*x+c))/(a*d-b*c)

Fricas [A] (verification not implemented)

none

Time = 0.22 (sec) , antiderivative size = 26, normalized size of antiderivative = 0.72 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\log \left (b x + a\right ) - \log \left (d x + c\right )}{b c - a d} \]

[In]

integrate(1/(b*x+a)/(d*x+c),x, algorithm="fricas")

[Out]

(log(b*x + a) - log(d*x + c))/(b*c - a*d)

Sympy [B] (verification not implemented)

Leaf count of result is larger than twice the leaf count of optimal. 128 vs. \(2 (26) = 52\).

Time = 0.20 (sec) , antiderivative size = 128, normalized size of antiderivative = 3.56 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\log {\left (x + \frac {- \frac {a^{2} d^{2}}{a d - b c} + \frac {2 a b c d}{a d - b c} + a d - \frac {b^{2} c^{2}}{a d - b c} + b c}{2 b d} \right )}}{a d - b c} - \frac {\log {\left (x + \frac {\frac {a^{2} d^{2}}{a d - b c} - \frac {2 a b c d}{a d - b c} + a d + \frac {b^{2} c^{2}}{a d - b c} + b c}{2 b d} \right )}}{a d - b c} \]

[In]

integrate(1/(b*x+a)/(d*x+c),x)

[Out]

log(x + (-a**2*d**2/(a*d - b*c) + 2*a*b*c*d/(a*d - b*c) + a*d - b**2*c**2/(a*d - b*c) + b*c)/(2*b*d))/(a*d - b
*c) - log(x + (a**2*d**2/(a*d - b*c) - 2*a*b*c*d/(a*d - b*c) + a*d + b**2*c**2/(a*d - b*c) + b*c)/(2*b*d))/(a*
d - b*c)

Maxima [A] (verification not implemented)

none

Time = 0.20 (sec) , antiderivative size = 36, normalized size of antiderivative = 1.00 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\log \left (b x + a\right )}{b c - a d} - \frac {\log \left (d x + c\right )}{b c - a d} \]

[In]

integrate(1/(b*x+a)/(d*x+c),x, algorithm="maxima")

[Out]

log(b*x + a)/(b*c - a*d) - log(d*x + c)/(b*c - a*d)

Giac [A] (verification not implemented)

none

Time = 0.28 (sec) , antiderivative size = 46, normalized size of antiderivative = 1.28 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {b \log \left ({\left | b x + a \right |}\right )}{b^{2} c - a b d} - \frac {d \log \left ({\left | d x + c \right |}\right )}{b c d - a d^{2}} \]

[In]

integrate(1/(b*x+a)/(d*x+c),x, algorithm="giac")

[Out]

b*log(abs(b*x + a))/(b^2*c - a*b*d) - d*log(abs(d*x + c))/(b*c*d - a*d^2)

Mupad [B] (verification not implemented)

Time = 0.29 (sec) , antiderivative size = 25, normalized size of antiderivative = 0.69 \[ \int \frac {1}{(a+b x) (c+d x)} \, dx=\frac {\ln \left (\frac {c+d\,x}{a+b\,x}\right )}{a\,d-b\,c} \]

[In]

int(1/((a + b*x)*(c + d*x)),x)

[Out]

log((c + d*x)/(a + b*x))/(a*d - b*c)